package com.jiangyao.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jiangyao.model.dto.ClassInfoDto;
import com.jiangyao.model.dto.ClassUserDto;
import com.jiangyao.model.dto.backend.ClassUserListPageDTO;
import com.jiangyao.model.entity.ClassUser;
import com.jiangyao.model.vo.ClassmateVo;
import org.springframework.data.repository.query.Param;
import com.jiangyao.model.vo.UserClassVo;
import com.jiangyao.model.vo.backend.ClassUserDetailVO;

import java.util.List;

/**
 * <p>
 * 班级成员信息 Mapper 接口
 * </p>
 *
 * @author xiangyan
 * @since 2020-08-13
 */
public interface IClassUserDao extends BaseMapper<ClassUser> {
	List<UserClassVo> getWebUserClass(ClassUserDto dto);
	/**
	 * 批量修改状态
	 *
	 * @param list   班级成员ID拼接集合
	 * @param adminUserId  操作用户ID
	 * @param status 状态
	 */
	void updateStatus(@Param("list") List<String> list, @Param("adminUserId") Integer adminUserId, @Param("status") Integer status);

	/**
	 * 批量添加
	 *
	 * @param list 班级成员
	 */
	void insertBatch(@Param("list") List<ClassUser> list);

	/**
	 * 获取组织班级成员列表
	 *
	 * @param page        分页
	 * @param listPageDTO 请求参数
	 */
	Page<ClassUserDetailVO> getListPage(Page<ClassUserDetailVO> page, @Param("listPageDTO")ClassUserListPageDTO listPageDTO);

    List<ClassmateVo> getClassmate(ClassInfoDto classInfoDto);
}
